﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using XCode;
using XCode.DataAccessLayer;

namespace BingZi.HY.Core.Entities.Center
{
	/// <summary>
	/// 店铺招聘信息
	/// </summary>
	[Serializable]
	[DataObject]
	[Description("店铺招聘信息")]
	[BindTable("app_ShopJobs", Description = "店铺招聘信息", ConnName = "Center", DbType = DatabaseType.SqlServer)]
	public partial class app_ShopJobs
	{
		#region 属性
		private Int32 _JobID;
		/// <summary>
		/// 编号
		/// </summary>
		[Description("编号")]
		[DataObjectField(true, true, false, 10)]
		[BindColumn(1, "JobID", "编号", "", "int", 10, 0, false)]
		public Int32 JobID
		{
			get { return _JobID; }
			set { if (OnPropertyChange("JobID", value)) _JobID = value; }
		}

		private Int32 _UserID;
		/// <summary>
		/// 所属用户
		/// </summary>
		[Description("所属用户")]
		[DataObjectField(false, false, false, 10)]
		[BindColumn(2, "UserID", "所属用户", "", "int", 10, 0, false)]
		public Int32 UserID
		{
			get { return _UserID; }
			set { if (OnPropertyChange("UserID", value)) _UserID = value; }
		}

		private String _J_Title;
		/// <summary>
		/// 标题
		/// </summary>
		[Description("标题")]
		[DataObjectField(false, false, false, 128)]
		[BindColumn(3, "J_Title", "标题", "", "nvarchar(128)", 0, 0, true)]
		public String J_Title
		{
			get { return _J_Title; }
			set { if (OnPropertyChange("J_Title", value)) _J_Title = value; }
		}

		private String _J_Description;
		/// <summary>
		/// 描述
		/// </summary>
		[Description("描述")]
		[DataObjectField(false, false, false, 1073741823)]
		[BindColumn(4, "J_Description", "描述", "", "ntext", 0, 0, true)]
		public String J_Description
		{
			get { return _J_Description; }
			set { if (OnPropertyChange("J_Description", value)) _J_Description = value; }
		}

		private DateTime _J_ExpiredTime;
		/// <summary>
		/// 过期时间
		/// </summary>
		[Description("过期时间")]
		[DataObjectField(false, false, false, 3)]
		[BindColumn(5, "J_ExpiredTime", "过期时间", "", "datetime", 3, 0, false)]
		public DateTime J_ExpiredTime
		{
			get { return _J_ExpiredTime; }
			set { if (OnPropertyChange("J_ExpiredTime", value)) _J_ExpiredTime = value; }
		}

		private DateTime _J_StartTime;
		/// <summary>
		/// 发布时间
		/// </summary>
		[Description("发布时间")]
		[DataObjectField(false, false, false, 3)]
		[BindColumn(6, "J_StartTime", "发布时间", "", "datetime", 3, 0, false)]
		public DateTime J_StartTime
		{
			get { return _J_StartTime; }
			set { if (OnPropertyChange("J_StartTime", value)) _J_StartTime = value; }
		}

		private DateTime _J_LastTime;
		/// <summary>
		/// 最后操作时间
		/// </summary>
		[Description("最后操作时间")]
		[DataObjectField(false, false, false, 3)]
		[BindColumn(7, "J_LastTime", "最后操作时间", "", "datetime", 3, 0, false)]
		public DateTime J_LastTime
		{
			get { return _J_LastTime; }
			set { if (OnPropertyChange("J_LastTime", value)) _J_LastTime = value; }
		}

		private Int32 _J_LastUserID;
		/// <summary>
		/// 最后操作用户
		/// </summary>
		[Description("最后操作用户")]
		[DataObjectField(false, false, false, 10)]
		[BindColumn(8, "J_LastUserID", "最后操作用户", "", "int", 10, 0, false)]
		public Int32 J_LastUserID
		{
			get { return _J_LastUserID; }
			set { if (OnPropertyChange("J_LastUserID", value)) _J_LastUserID = value; }
		}

		private Int32 _J_Top;
		/// <summary>
		/// 置顶1,正常0
		/// </summary>
		[Description("置顶1,正常0")]
		[DataObjectField(false, false, false, 3)]
		[BindColumn(9, "J_Top", "置顶1,正常0", "0", "tinyint", 3, 0, false)]
		public Int32 J_Top
		{
			get { return _J_Top; }
			set { if (OnPropertyChange("J_Top", value)) _J_Top = value; }
		}

		private Int32 _J_Red;
		/// <summary>
		/// 套红1,正常0
		/// </summary>
		[Description("套红1,正常0")]
		[DataObjectField(false, false, false, 3)]
		[BindColumn(10, "J_Red", "套红1,正常0", "0", "tinyint", 3, 0, false)]
		public Int32 J_Red
		{
			get { return _J_Red; }
			set { if (OnPropertyChange("J_Red", value)) _J_Red = value; }
		}

		private Int32 _J_Status;
		/// <summary>
		/// 审核状态
		/// </summary>
		[Description("审核状态")]
		[DataObjectField(false, false, false, 3)]
		[BindColumn(11, "J_Status", "审核状态", "", "tinyint", 3, 0, false)]
		public Int32 J_Status
		{
			get { return _J_Status; }
			set { if (OnPropertyChange("J_Status", value)) _J_Status = value; }
		}
		#endregion

		#region 获取/设置 字段值
		/// <summary>
		/// 获取/设置 字段值。
		/// 一个索引，基类使用反射实现。
		/// 派生实体类可重写该索引，以避免反射带来的性能损耗
		/// </summary>
		/// <param name="name">字段名</param>
		/// <returns></returns>
		public override Object this[String name]
		{
			get
			{
				switch (name)
				{
					case "JobID" : return _JobID;
					case "UserID" : return _UserID;
					case "J_Title" : return _J_Title;
					case "J_Description" : return _J_Description;
					case "J_ExpiredTime" : return _J_ExpiredTime;
					case "J_StartTime" : return _J_StartTime;
					case "J_LastTime" : return _J_LastTime;
					case "J_LastUserID" : return _J_LastUserID;
					case "J_Top" : return _J_Top;
					case "J_Red" : return _J_Red;
					case "J_Status" : return _J_Status;
					default: return base[name];
				}
			}
			set
			{
				switch (name)
				{
					case "JobID" : _JobID = Convert.ToInt32(value); break;
					case "UserID" : _UserID = Convert.ToInt32(value); break;
					case "J_Title" : _J_Title = Convert.ToString(value); break;
					case "J_Description" : _J_Description = Convert.ToString(value); break;
					case "J_ExpiredTime" : _J_ExpiredTime = Convert.ToDateTime(value); break;
					case "J_StartTime" : _J_StartTime = Convert.ToDateTime(value); break;
					case "J_LastTime" : _J_LastTime = Convert.ToDateTime(value); break;
					case "J_LastUserID" : _J_LastUserID = Convert.ToInt32(value); break;
					case "J_Top" : _J_Top = Convert.ToInt32(value); break;
					case "J_Red" : _J_Red = Convert.ToInt32(value); break;
					case "J_Status" : _J_Status = Convert.ToInt32(value); break;
					default: base[name] = value; break;
				}
			}
		}
		#endregion

		#region 字段名
		/// <summary>
		/// 取得店铺招聘信息字段名的快捷方式
		/// </summary>
		public class _
		{
			///<summary>
			/// 编号
			///</summary>
			public const String JobID = "JobID";

			///<summary>
			/// 所属用户
			///</summary>
			public const String UserID = "UserID";

			///<summary>
			/// 标题
			///</summary>
			public const String J_Title = "J_Title";

			///<summary>
			/// 描述
			///</summary>
			public const String J_Description = "J_Description";

			///<summary>
			/// 过期时间
			///</summary>
			public const String J_ExpiredTime = "J_ExpiredTime";

			///<summary>
			/// 发布时间
			///</summary>
			public const String J_StartTime = "J_StartTime";

			///<summary>
			/// 最后操作时间
			///</summary>
			public const String J_LastTime = "J_LastTime";

			///<summary>
			/// 最后操作用户
			///</summary>
			public const String J_LastUserID = "J_LastUserID";

			///<summary>
			/// 置顶1,正常0
			///</summary>
			public const String J_Top = "J_Top";

			///<summary>
			/// 套红1,正常0
			///</summary>
			public const String J_Red = "J_Red";

			///<summary>
			/// 审核状态
			///</summary>
			public const String J_Status = "J_Status";
		}
		#endregion
	}
}